package info.hexin.mvc.methodtree;

import info.hexin.ioc.IocBean;
import info.hexin.mvc.annotation.Method;

import java.util.ArrayList;
import java.util.List;

/**
 * 将每次request和一个method相对应
 * 
 * @author ydhexin@gmail.com
 * 
 */
public class MethodInfo {

    private String url;
//    private Object me;
    private IocBean iocBean;
    private Method method;
    private ViewInfo viewInfo;
    private java.lang.reflect.Method reflectMethod;
    private List<Arg> args = new ArrayList<Arg>();

    public String getUrl() {
        return url;
    }

    public void setUrl(String url) {
        this.url = url;
    }

//    public Object getMe() {
//        return me;
//    }
//
//    public void setMe(Object me) {
//        this.me = me;
//    }
    
    public List<Arg> getArgs() {
        return args;
    }

    public IocBean getIocBean() {
        return iocBean;
    }

    public void setIocBean(IocBean iocBean) {
        this.iocBean = iocBean;
    }

    public Method getMethod() {
        return method;
    }

    public void setMethod(Method method) {
        this.method = method;
    }

    public void setArgs(List<Arg> args) {
        this.args = args;
    }

    public void addArg(Arg arg) {
        args.add(arg);
    }

    public ViewInfo getViewInfo() {
        return viewInfo;
    }

    public void setViewInfo(ViewInfo viewInfo) {
        this.viewInfo = viewInfo;
    }

    public java.lang.reflect.Method getReflectMethod() {
        return reflectMethod;
    }

    public void setReflectMethod(java.lang.reflect.Method reflectMethod) {
        this.reflectMethod = reflectMethod;
    }
}
